{{tag>portail fichier logiciels}}

----

====== Archivage et compression de fichiers ======

En informatique, une [[wpfr>Archive_(informatique)|archive]] est un fichier qui peut regrouper plusieurs fichiers et répertoires. Les archives les plus fréquentes sous linux portent l'extension **.tar** (format UNIX), **.gz** ou **.zip**.

Les fichiers archives sont souvent compressés (gain de place), mais par forcément.

Cette page présente les différents formats d'archives rencontrés sous Ubuntu ainsi que les différentes façons de les créer, de les extraire ou de les lire.

===== Archiver et extraire une archive =====


==== Graphiquement ====
Les logiciels graphiques sous linux sont des surcouches aux différents formats d'archivage et de compression, et savent normalement tous les utiliser. Encore faut-il que ceux ci-soient installés. Des formats comme le .[[wpfr>tar]], le [[wpfr>Gzip]], le [[zip|zip]] sont installés par défaut. Le [[rar|rar]] est à installer manuellement (le meta-paquet [[apt>ubuntu-restricted-extras]] installe quand à lui sa fonction d'extraction). Le [[p7zip|7Zip]] doit également être installé manuellement (cliquez ici [[apt>p7zip]].

  * **Pour extraire (décompresser) une archive**, il suffit généralement de faire un clic-droit sur le fichier puis choisir "Extraire l'archive" (ou formulation équivalente, comme "Décompresser l'archive" par exemple).
  * **Pour créer une archive**, il suffit généralement de sélectionner les fichiers à compresser, puis faire un clic-droit sur un des fichiers sélectionnés et choisir "Compresser".

Plus de détails :

  * [[:File-roller]] - gestionnaire d'archives par défaut d'**Ubuntu**.
  * [[:Ark]] - gestionnaire d'archives par défaut de **Kubuntu**.
  * Xarchiver ([[http://xarchiver.xfce.org|Site officiel]]) - gestionnaire d'archives léger.
  * [[peazip]] - interface graphique compatible avec de nombreux formats
  * [[:Engrampa]] - gestionnaire d'archive par défaut d'[[:mate|Ubuntu MATE]] et d'[[:Xubuntu]].
  

<note tip>
Certains formats ne sont pas installés par défaut sur le système (par exemple .ace et .xtm). Si vous ne parvenez pas à ouvrir une archive, cherchez l'extension adéquate ci-dessous dans la section "En ligne de commande".</note>

==== En ligne de commande ====

Chaque format d'archive a un utilitaire en [[:commande_shell|ligne de commande]] permettant de créer ou d'extraire des archives.

Vous trouverez ci-dessous les commandes permettant de gérer chaque format:
  * pour les formats .tar .tar.gz .tgz .tar.bz2 .tbz2 .tar.xz , voir la page [[tar]]
  * pour les formats .7z .zip .Zip64 .cab .rar .arj .gz .bz2 .tar .cpio .rpm .iso (image disque) .exe .deb , voir la page [[p7zip]]
  * pour le format .zip , voir la page [[zip]]
  * pour le format .rar , voir la page [[rar]]
  * pour le format .ace , voir la page [[unace]]
  * pour le format .xtm , voir [[http://xtremsplit.fr/linux/Xtremsplit|Xtremsplit]] (toujours disponible mais n'est plus maintenu)

=== Script extraction ===
Le script suivant permet de décompresser un large éventail de types de fichiers compressés. Il vous suffira juste de taper dans un [[:terminal]]  la [[:commande_shell|commande]] quel que soit le type d'archive: <code>extract <fichier></code>

[[:tutoriel:comment_modifier_un_fichier|Ajoutez la fonction]] dans ~/.bashrc :
<file>
#!/bin/bash
extract () {
  if [ -f "$1" ] ; then
    case "$1" in
      *.tar.bz2)   tar xvjf "$1"    ;;
      *.tar.gz)    tar xvzf "$1"    ;;
      *.tar.xz)    tar xvJf "$1"    ;;
      *.bz2)       bunzip2 "$1"     ;;
      *.rar)       unrar x "$1"     ;;
      *.gz)        gunzip "$1"      ;;
      *.tar)       tar xvf "$1"     ;;
      *.tbz2)      tar xvjf "$1"    ;;
      *.tgz)       tar xvzf "$1"    ;;
      *.zip)       unzip "$1"       ;;
      *.Z)         uncompress "$1"  ;;
      *.7z)        7z x "$1"        ;;
      *.xz)        unxz "$1"        ;;
      *.exe)       cabextract "$1"  ;;
      *)           echo "'$1': unrecognized file compression" ;;
    esac
  else
    echo "'$1' is not a valid file"
  fi
}

</file>
=====Découper un gros fichier en plusieurs petits morceaux=====

  * Sous Ubuntu, il suffit d'un clic-droit sur votre gros fichier, choisir "Compresser..." en .7z , en cochant la fonction "Couper en volume de .." dans le menu "Autres options"
  * Des logiciels spécifiques pour le morcellement de fichiers :
    * [[gnome-split|GNOME Split]] - permet le découpage et l'assemblage de gros fichiers en plusieurs morceaux, supporte plusieurs formats.
    * [[HjSplit]] (n’existe plus) - un logiciel multiplateforme permettant de découper et recoller un fichier en plusieurs morceaux.
  * Voir aussi : [[http://blog.bmaron.net/index.php?post/2007/06/10/Separer-un-gros-fichier-en-plusieurs-petits-volumes|Séparer un fichier en plusieurs morceaux]].

===== Ré-assembler un zip découpé =====
Voir [[zip#archives_zip_decoupees|archives zip découpées]].

===== Réparer une archive corrompue =====


Voir le tutoriel [[:tutoriel:reparer_une_archive_corrompue|Comment réparer une archive corrompue]]

===== Archivage protégé par mot de passe =====
Si vous avez une archive, le plus souvent .rar, protégée par mot de passe, ouvrez un terminal. Rendez-vous dans le dossier contenant l'archive avec la commande cd.
Vous entrerez ensuite cette commande :

<code> unrar e -kb -p- nom_archive.rar </code>

En cas d'oubli du mot de passe vous avez plusieurs outils :
  * Pour les **zip** [[:tutoriel:comment_installer_un_paquet|installez le paquet]]  **[[apt>fcrackzip]]**. Puis utilisez la commande : <code>fcrackzip -c a -p aaaaaa fichier_protege.zip</code>
Qui va tester le fichier ''fichier_protege.zip'' avec toutes les possibilités de 6 caractères en minuscule. Vous pourrez aussi tester sur une plage de caractère (ex: de 6 à 10 lettres), avec plus de caractères ( majuscules, accentués...Etc), ou avec une liste de mots prédéfinis... 
  * Pour les archives rar, 7z ou zip [[:tutoriel:comment_installer_un_paquet|installez le paquet]]  **[[apt>rarcrack]]**. Puis utilisez la commande : <code>rarcrack /<chemin>/monfichier.rar [--type rar|zip|7z]</code>
Ce qui est entre crochets est optionnel mais conseillé selon le typer de fichier à traiter.
===== Voir aussi =====

  * [[http://rlwpx.free.fr/WPFF/comploc.htm|Comparatif des performances de différentes méthodes de compression de fichiers]]
  * [[wpfr>Compression_de_données|Wikipédia - Compression de données]]


----

//Contributeurs : [[:utilisateurs:_Enchained]], [[:utilisateurs:cedy-na-mix]]//